<#if isWithPackage?exists && isWithPackage==true>package ${packageName}.entity;</#if>

<#if isAutoImport?exists && isAutoImport==true>
<#if isLombok?exists && isLombok==true>import lombok.Data;</#if>
import java.util.Date;
import java.util.List;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
<#if isSwagger?exists && isSwagger==true>
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;</#if>
</#if>
/**
 * @description ${classInfo.classComment}
 * @author ${authorName}
 * @date ${.now?string('yyyy-MM-dd')}
 */
<#if isLombok?exists && isLombok==true>@Data</#if><#if isSwagger?exists && isSwagger==true>
@ApiModel("${classInfo.classComment}")</#if>
@JsonIgnoreProperties(ignoreUnknown = true)
public class ${classInfo.className} implements Serializable {

    private static final long serialVersionUID = 1L;

        public  static LambdaQueryWrapper<${classInfo.className}> getEqLambdaQueryWrapper(${classInfo.className} ${classInfo.className?uncap_first}){

            LambdaQueryWrapper<${classInfo.className}> eq =
                Wrappers.lambdaQuery(${classInfo.className}.class)
        <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
            <#list classInfo.fieldList as fieldItem >
                .eq(${classInfo.className}::get${fieldItem.fieldName?cap_first}, ${classInfo.className?uncap_first}.get${fieldItem.fieldName?cap_first}())
            </#list>
        </#if>
        ;
                return eq;
                }

        public  static LambdaQueryWrapper<${classInfo.className}> getLikeLambdaQueryWrapper(${classInfo.className} ${classInfo.className?uncap_first}){

        LambdaQueryWrapper<${classInfo.className}> queryWrapper =
        Wrappers.lambdaQuery(${classInfo.className}.class)
        <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
            <#list classInfo.fieldList as fieldItem >
                .like(${classInfo.className?uncap_first}.get${fieldItem.fieldName?cap_first}()!=null,${classInfo.className}::get${fieldItem.fieldName?cap_first}, ${classInfo.className?uncap_first}.get${fieldItem.fieldName?cap_first}())
            </#list>
        </#if>
        ;
        return queryWrapper;
        }


        public   LambdaQueryWrapper<${classInfo.className}> getEqLambdaQueryWrapper(){

        LambdaQueryWrapper<${classInfo.className}> eq =
        Wrappers.lambdaQuery(${classInfo.className}.class)
        <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
            <#list classInfo.fieldList as fieldItem >
                .eq(${classInfo.className}::get${fieldItem.fieldName?cap_first}, get${fieldItem.fieldName?cap_first}())
            </#list>
        </#if>
        ;
        return eq;
        }


    @TableId(type = IdType.AUTO)
<#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
<#list classInfo.fieldList as fieldItem >
    <#if isComment?exists && isComment==true>/**
    * ${fieldItem.fieldComment}
    */</#if><#if isSwagger?exists && isSwagger==true>
    @ApiModelProperty("${fieldItem.fieldComment}")</#if>
    private ${fieldItem.fieldClass} ${fieldItem.fieldName};

<#if isLombok?exists && isLombok==false>
    public ${fieldItem.fieldClass} get${fieldItem.fieldName?cap_first}() {
        return ${fieldItem.fieldName};
    }

    public void set${fieldItem.fieldName?cap_first}(${fieldItem.fieldClass} ${fieldItem.fieldName}) {
        this.${fieldItem.fieldName} = ${fieldItem.fieldName};
    }
</#if>
</#list>
</#if>
    public ${classInfo.className}() {}
}
